package File;

import java.io.File;
import java.io.IOException;

public class Tss {
    public static void main(String[] args) {
        //构造方法
        File file = new File("D:\\my\\text.txt");// 创建文件目录对象
        try {
            file.createNewFile();//当且仅当不存在具有此抽象路径名指定名称的文件时，不可分地创建一个新的空文件。
        } catch (IOException e) {
            e.printStackTrace();//输出异常信息
        }
        //File类获取功能
        System.out.println(file.getName());//获取文件名
        System.out.println(file.getPath());//获取文件路径(绝对路径或相对路径)
        System.out.println(file.getAbsolutePath());//获取文件绝对路径
        System.out.println(file.getParent());//获取文件父目录
        System.out.println(file.length());//获取文件大小
        System.out.println(file.lastModified());//获取文件最后修改时间
        //File类判断功能
        //掌握
        System.out.println(file.exists());//判断文件是否存在
        System.out.println(file.isDirectory());//判断对象是否是目录
        System.out.println(file.isFile());//判断对象是否是标准文件

        //了解
        System.out.println(file.isHidden());//判断对象是否是隐藏文件
        System.out.println(file.canRead());//判断对象是否可读
        System.out.println(file.canWrite());//判断对象是否可改

        //File类其他功能
        File file1 = new File("D:\\my\\FileTest");
        file1.mkdir();//创建目录
        File file2 = new File("D:\\my\\FileTest\\fileTest1\\fileTest2");
        file2.mkdirs();//创建多级目录

        File file3  = new File("D:\\Git\\gitIdeaProject\\javaSe-2\\src");
        String[] list = file3.list();//获取目录下的所有文件和目录名
        for (String s : list) {
            System.out.println(s);
        }
        File[] listFiles = file3.listFiles();//返回一个抽象路径名数组，这些路径名表示此抽象路径名表示的目录中的文件。
        for (File file4 : listFiles) {
            System.out.println(file4);
        }
    }
}
